package cn.matezk.lianlian.service;

import cn.hutool.json.JSONObject;
import cn.matezk.lianlian.beans.LabelPrintParams;
import cn.matezk.lianlian.model.Device;
import com.tencentcloudapi.common.exception.TencentCloudSDKException;

import java.util.Date;
import java.util.List;

public interface IDeviceService {
    void stateChanged(String deviceId, String state, Date eventTime);
    void property(String deviceId, Date dataTime, JSONObject property) throws InterruptedException;
    void propertyForward(String deviceId, Date dataTime, JSONObject property) throws InterruptedException;
    int exFactory(LabelPrintParams params) throws TencentCloudSDKException;
    JSONObject localProperty(String productId, String deviceName);
    void versionReport(String deviceId, String version);
    List<Device> selectByAppKey(String appKey);
}
